﻿package cont;

import core.*;


// ======================================================= Общая часть контактов
abstract public class Cont {

//==================================================================== Константы
// Типы контактов
public static final int UNK = -1; // Неизвестно
public static final int ROOM = 0; // Комната
public static final int ONE = 1; // Персональный
public static final int IN_ROOM = 4; // Список находящихся в комнате
public static final int MAIL = 8; // Почта
public static final int RSS = 9; // Лента RSS

// Пол
public static final int G_UNK = 0; // Не указан
public static final int G_MALE = 1; // Мужской
public static final int G_FEMALE = 2; // Женский

// Режим работы
public static final int M_NOT_IN_LIST = 0; // Не в вписке
public static final int M_IN = Mat.BIT0; // Принимать сообщения
public static final int M_OUT = Mat.BIT1; // Можно передавать сообщения этому контакту
public static final int M_IO = Mat.BIT0 | Mat.BIT1; // Можно принимать и передавать сообщения
public static final int M_FG = Mat.BIT2; // Виден при перелистывании


//======================================================== Глобальные переменные
public String name; // Название контакта
//public int width; // Ширина названия в точках

public boolean fActive; // Отображать при перелистывании
public int type; // Тип контакта
public int num; // Номер контакта
public int mode; // режим работы контакта
public boolean fNew; // Наличие новых сообщений


//================================================================ Инициализация
public Cont(/* String name */) {
	//this.name = name;
}


//================================================= Преобразование в байт-массив
public abstract byte[] toByte();


//==================================================== Пересчет блоков сообщений
public abstract void setSize(int width, int height);


//=================================================== Заполнение из байт-массива
public abstract void fromByte(byte[] content);

}
